package com.caiyouxi.boss.buser.mapper;

import com.caiyouxi.boss.buser.model.*;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * Created by Administrator on 2017/10/19.
 */
@Mapper
public interface SysUserProfileMapper {
    //查询
    public SysUserProfileBean select_user_profile(int id);

    //增加
    public int add_user_profile(SysUserProfileBean bean);

    //修改
    public int update_user_profile(SysUserProfileBean bean);

    //删除
    public int delete_user_profile(SysUserProfileBean bean);

    /**
     * 获取用户详情
     */
    SysUserProfileBean get_user_info(int id);

    /**
     * 登陆
     */
    SysUserProfileBean get_user_by_username (@Param("username") String username);

    /**
     * 用户列表
     */
    List<SysUserProfileBean> get_user_list(SysUserProfileBean bean);

    /**
     * 用户列表总条数
     * @param
     * @return
     */
    int get_user_count(SysUserProfileBean bean);

    /***
     * 根据用户id查询相应的角色信息
     */
    public SysUserProfileBean get_sys_role_list(SysUserProfileBean bean);

    /**
     * 根据角色查出权限信息
     */
    public List<SysRolesBean> get_user_rights_list(String[] roles);

    /**
     * 获取用户额外权限
     *
     */
    public List<SysUserRightsBean> get_extra_rights_list(SysUserProfileBean bean);


    /****
     * 获取顶级菜单
     * @param list
     * @return
     */

    public List<SysRightsBean> get_sys_rights(List<String> list);

    /***
     * /获取二级、三级菜单
     * @param parent_id
     * @param list
     * @return
     */
    public List<SysRightsBean> get_sys_rights_id(@Param("parent_id") int parent_id, @Param("list") List<String> list);


    /**
     * 用户列表
     */
    List<UserListInfoBean>get_user_info_list(UserListInfoBean bean);

    /**
     * 用户列表总条数
     * @param
     * @return
     */
    int get_user_profile_count(UserListInfoBean bean);


    /**
     * 用户基本详情
     */
    UserListInfoBean get_user_prefile_info(UserListInfoBean bean);

}
